package com.shuyuansystem.service;

import com.shuyuansystem.pojo.Product;
import com.shuyuansystem.utils.PageResult;
import com.shuyuansystem.utils.QueryPageBean;

import java.math.BigDecimal;
import java.util.List;

public interface ProductService {
    List<Product> getAllProduct();
    PageResult findPage(QueryPageBean queryPageBean);
    String getProductNameById(Integer productId);
    BigDecimal getProductPriceById(Integer productId);

    List<Product> getProductsByProductIds(List<Integer> productIds);

    // 新方法：根据 product_id 列表分页查询产品信息
    List<Product> getProductsByProductIdsWithPagination(List<Integer> productIds, int offset, int pageSize);

    // 新方法：根据 product_id 列表统计总记录数
    int getTotalCountByProductIds(List<Integer> productIds);
    // 根据商品 ID 查询商品信息
    Product getProductById(Integer productId);
    // 更新商品信息
    boolean updateProduct(Product product);
    // 删除商品及相关关联数据
    boolean deleteProduct(Integer productId);
    boolean addProduct(Product product);
    // 根据ProductId获取对应的product
    Product getByProductId(String productId);

}
